//package com.schedualnew.mq.yihuiesb.service;
//
//
//import com.ewell.sdk.business.EwellServiceTool;
//import com.ewell.sdk.business.MessageHandler;
//import com.ewell.sdk.domain.MessageEntity;
//import org.apache.commons.lang.StringUtils;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//
//import java.util.HashMap;
//import java.util.Map;
//
//
//public abstract class MqListenTask extends MessageHandler {
//    private static Logger log = LoggerFactory.getLogger(MqListenTask.class);
//
//    private boolean bConnectMQ = false;
//
//    private EwellServiceTool ewellServiceTool = null;
//
//    private static String cid = null;
//
//    private static final String strQueueMgr = "";
//
//
//    private synchronized boolean connectMQ() {
//        if (this.bConnectMQ) {
//            return true;
//        }
//
//        Map<String, String> infoMap = new HashMap<>();
//        infoMap.put("apply_no", "");
//        //FieldConfigUtil.getFieldValue(false, "EXAM_APPLY", "apply_no", infoMap);
//        try {
//            log.info("准备连接队列管理器,mgr:" + strQueueMgr);
//            this.ewellServiceTool = new EwellServiceTool();
//            this.bConnectMQ = true;
//            log.info(String.format("连接队列管理器成功 mgr(%s)", new Object[]{strQueueMgr}));
//        } catch (Exception e) {
//            e.printStackTrace();
//            log.error(String.format("连接队列管理器失败 mgr(%s): %s", new Object[]{strQueueMgr, e.getMessage()}));
//            return false;
//        }
//        return true;
//    }
//
//
//    private synchronized void disconnectMQ() {
//        try {
//            this.ewellServiceTool.disconnect();
//        } catch (Exception e) {
//            e.printStackTrace();
//            log.error("断开mq连接失败，{},{}", strQueueMgr, e.getMessage());
//        }
//        this.bConnectMQ = false;
//    }
//
//
//
//    public abstract boolean doMonitorTask(String paramString1, String paramString2);
//
//    public abstract void resetMonitor();
//
//
//    public void onMessage(MessageEntity message) throws Exception {
//        byte[] btMsg = message.getMsg().getBytes("UTF-8");
//        String strMsg = new String(btMsg, "UTF-8");
//
//
//        if (!StringUtils.isEmpty(strMsg)) {
//            try {
//                if (!MqListenTask.this.doMonitorTask(strMsg, message.getMsgId())) {
//                    //MqListenTask.access$000().error("处理mq消息失败：strMsg({}),msgId({})", strMsg, message.getMsgId());
//                }
//            } catch (Exception e) {
//                e.printStackTrace();
//                //MqListenTask.access$000().error(String.format("处理mq消息失败" + message.getMsgId() + "：%s", new Object[]{e.getMessage()}));
//            }
//        }
//    }
//
//
//    public void onException(Throwable exception, MessageEntity messageEntity) {
//        exception.printStackTrace();
//        //access$000().error(String.format("监听队列异常：%s", new Object[]{exception.getMessage()}));
//        this.resetMonitor();
//    }
//}